home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-2.iso / extra / sgatfmt4.zip / SGATFMT4.TXT < prev   
Text File  |  1995-10-04  |  34KB  |  684 lines

  1.    _ _ _
  2.   / / (_)
  3.  _\ \ \
  4. (_)_/_/    SGATFMT4.EXE v4.0 - Seagate Format drive utility.
  5. Copyright 1992-1995 Seagate Technology, Inc. All rights reserved.
  6.  
  7.  
  8. Introduction
  9. ------------
  10. !  READ THIS ENTIRE DOCUMENT BEFORE USING THIS PROGRAM.  THIS PROGRAM
  11. !  IS DESTRUCTIVE TO USER DATA.  SEVERAL SPECIFIC WARNINGS AND
  12. !  RECOMMENDATIONS ARE GIVEN THAT MAY PERTAIN TO YOUR DISC DRIVE.
  13.  
  14. SGATFMT4 (Seagate Format) is a lo-level formatting utility designed
  15. for AT 286/386/486 systems, only.  (If the program is run on an XT,
  16. most likely a stack overflow error message will display.)
  17.  
  18. SGATFMT4 is designed and LIMITED to work with the following Seagate
  19. disc drive interfaces: ST412 (both MFM and RLL), ESDI (with controller
  20. bios disabled), and ATA/IDE (with certain limitations).  SCSI
  21. interface disc drives are not supported.  (See the section "ABOUT
  22. DRIVES NOT LISTED")
  23.  
  24. SGATFMT4 does not use the system BIOS to access the drive, but instead
  25. uses the AT register command set.  This means that it is not necessary
  26. to pre-set a CMOS drive-type prior to the lo-level format.  The CMOS
  27. drive type will become mandatory, however, prior to partitioning and
  28. the DOS hi-level format (see the section below on SETTING CMOS DRIVE
  29. TYPES).
  30.  
  31. SGATFMT4 only works if the controller/host adapter is set to the
  32. primary hard drive port addresses of 1F0-1F7. (This is the common port
  33. address used on most controllers.)
  34.  
  35. SGATFMT4 checks to see if a Seagate ST21/22 M or R controller is
  36. installed with its on-board controller bios enabled.  If this
  37. condition exists, SGATFMT4 will exit and issue an appropriate debug
  38. command to initiate the controller's built in lo-level format.
  39.  
  40. ====================================================================
  41.  
  42. There are three basic steps to preparing a hard disc drive for use in
  43. a computer system:
  44.  
  45.         1. Lo-level format (MFM, RLL, ESDI, and some SCSI)
  46.         2. Partitioning with the operating system software.
  47.         3. Hi-level formatting with the operating system software.
  48.  
  49. SGATFMT4 addresses step number 1.  In addition to preparing a hard
  50. disc drive for use, SGATFMT4 also has practical use as a diagnostic
  51. utility to test drive functionality.
  52.  
  53.      ==========================================================
  54.  
  55.  
  56. The opening first screen is used to determine which of two drives is
  57. to be selected for the lo-level format.  If only one drive exists in
  58. the system then select drive 0 by pressing 0, followed by the Enter
  59. key:
  60.  
  61.    █▀▀▀██ █▀▀▀██ █▀▀▀██▀▀▀█▀▀▀▀ █▀▀▀▀▀▀ █▀▀█▀▀██▀▀▀█▀▀▀▀   Ver. 4.0
  62.    █▄▄▄▄▄ ██     █▄▄▄██   ██    █▄▄▄▄   ██ ██ ██   ██
  63.        ██ ██ ▀██ ██  ██   ██    ██      ██    ██   ██
  64.    █▄▄▄██ █▄▄▄██ ██  ██   ██    ██      ██    ██   ██  (tm)
  65.  
  66.                       ┌─────────────────────────────────┐
  67.                       │ ───────────────█─────────────── │
  68.                       │ ───────────────█─────────────── │
  69.                       │ ───────────────█─────────────── │
  70.                    ▄▄▄┴▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄┴▄▄▄
  71.                    █                                       █
  72.   ┌──────────────────────────────>  Drive 0                █
  73.   │                █    ▄                                  █
  74.   │                █                                       █
  75.   │                ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  76.   │
  77.   └────────────< (Look for your choice to show up here)
  78.  
  79.       Please select physical hard drive 0 or 1 press <ret> to select
  80.  
  81.  
  82. After the drive selection is made, the next step is to identify the
  83. model:
  84.  
  85.                       ┌─────────────────────────────────┐
  86.                       │ ───────────────█─────────────── │
  87.                       │ ───────────────█─────────────── │
  88.                       │ ───────────────█─────────────── │
  89.                    ▄▄▄┴▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄┴▄▄▄
  90.                    █                                       █
  91.                    █                Drive 0                █
  92.                    █    ▄   ┌─────>  ST124                 █
  93.                    █        │                              █
  94.                    ▀▀▀▀▀▀▀▀▀│▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  95.                             │
  96.                             └──< (Look for your choice here)
  97.  
  98.    Please select a Seagate drive model, press <ret> to select
  99.  U =prev D =next  HOME =first  END =last  PGUP =U10  PGDN =D10
  100.  
  101. If your model drive is not listed, go to the end of the models list
  102. and select CUSTOM.  This is a user defined drive input geometry that
  103. will require values for Cylinders, Heads, and Sectors per Track.
  104.  
  105.  
  106. Once the model has been identified and the Enter key is pressed, the
  107. Main Menu appears:
  108.  
  109.                          ╔═════ FORMAT OPTIONS ═══════╗
  110.                          ║                            ║
  111.                          ║  1. Format Drive           ║
  112.                        * ║  2. Enter Defects          ║
  113.                          ║  3. Verify Drive           ║
  114.                          ║  4. Format/Verify Drive    ║
  115.                          ║  5. Choose Another Drive   ║
  116.                        * ║  6. Optimize Interleave    ║
  117.                          ║                            ║
  118.                          ╚════════════════════════════╝
  119.  
  120. (* Menu option not available when ATA/IDE ZBR drive selected.)
  121.  
  122.         1. Format Drive :  This is the main working part of SGATFMT4.
  123. When this selection is made a warning appears, advising that ALL DATA
  124. WILL BE ERASED.  This is very serious business!  If you haven't backed
  125. up your data, then STOP!  Under no circumstances is Seagate
  126. responsible for lost data.
  127.  
  128. For MFM, RLL and ESDI interface drives:  You will be asked to select
  129. or test for the proper interleave value. Next you will be queried for
  130. head and cylinder skew values (see INTERLEAVE and SKEWING sections
  131. below).  A format on a disc drive is very controller dependent and
  132. usually means that the format performed by one controller cannot be
  133. utilized by another.
  134.  
  135.         2. Enter Defects :  For MFM, RLL and ESDI interface drives:
  136. Affixed to the top of every Seagate MFM and RLL disc drive, is a list
  137. of micro-defects that were found to exist at the time of manufacture.
  138. Seagate's original list should contain less than 1 defect per
  139. formatted megabyte and defect-free on the first two cylinders.  The
  140. micro-defects that have been detected are generally of two types: hard
  141. and soft.  A hard defect is usually a surface problem and a soft
  142. defect is usually a magnetic anomaly of some kind.  Soft defects are
  143. discovered at the factory with very sophisticated test equipment,
  144. while hard defects can be discovered with conventional software like
  145. SGATFMT4.
  146.  
  147. The typical defect label on the top of the drive is usually made up of
  148. three columns: Cyl  Hd  BFI     and might look like this:
  149.                 67   0  7814
  150.                 68   0  7815
  151.                 69   0  7816
  152.                175   2  3316   and so on.
  153.  
  154. The column heading "BFI" stands for Bytes From Index.  It may also be
  155. listed as "BCAI" which stands for Byte Count After Index, and is the
  156. same thing.  The Index pulse is usually generated by a Hall sensor
  157. that is embedded in the spindle motor or else it is encoded on servo
  158. tracks.  This index pulse is considered the absolute point of
  159. reference for the BFI or BCAI count.  With BFI, an individual sector
  160. can be located and locked out as opposed to locking out the entire
  161. track.  If a defect is entered in SGATFMT4 without a BFI (a BFI of 0),
  162. then the entire track is locked out . Once all of the defects are
  163. entered, the specific areas will be marked as bad upon exiting the
  164. module. (see ANATOMY OF A SECTOR below)
  165.  
  166.  
  167.         3. Verify Drive :  This module should still be proceeded by a
  168. complete backup before use.  Verify is available to search out hard
  169. defects.  If the micro-defect list has been removed from the drive or
  170. the suspicion of a new defect arises, then Verify can be run.  It will
  171. report to the screen, and optionally to the printer, a cylinder, head,
  172. and sector reference. Unfortunately, a specific BFI cannot be
  173. reported. Therefore, if a subsequent lo-level format is performed, a
  174. BFI of 0 will need to be entered.
  175.  
  176. Verify will ask if you want to do destructive pattern testing.  If
  177. answered "No", the program operates in a read-only mode.  If answered
  178. "Yes", you can choose up to nine different patterns that are used in
  179. write-read mode.  (Note: a high capacity drive may take several hours
  180. to complete if all nine patterns are selected.)
  181.  
  182.  
  183.         4. Format/Verify Drive :  This function combines the Format
  184. and Verify procedures into a single operation.  This step does
  185. provide, however, for marking out "discovered" defects at the sector
  186. level instead of whole tracks at the time of formatting.
  187.  
  188.  
  189.         5. Choose Another Drive : If two physical drives are
  190. installed, this allows for switching between them.  Be ABSOLUTELY SURE
  191. you are aware of which drive is selected.  The next saddest person in
  192. the world is the one who formats the wrong drive!
  193.  
  194.         6. Optimize INTERLEAVE: For MFM, RLL and ESDI interface
  195. drives: The interleave value for a hard disc drive determines how many
  196. times a disc needs to spin in order to read a single track of data.
  197. The typical disc drive usually spins at 3,600 rpm (or 60 times per
  198. second).  On a MFM disc drive with 17 sectors per track, the
  199. Read/Write heads, drive circuitry, controller and CPU are required to
  200. process all 17 sectors in 1/60th of a second.  SGATFMT4 can test the
  201. system and report which interleave yields the fastest data transfer
  202. rate for your system (this is a data destructive test, be sure to back
  203. up 100% of your data before running the interleave tests).  The best
  204. interleave possible is 1 to 1, meaning 1 revolution to read 1 track of
  205. data. Interleaves are always whole numbers, so the next best
  206. interleave is 2 to 1.
  207.  
  208.    1 to 1:
  209.  
  210.         1- 2- 3- 4- 5- 6- 7- 8- 9-10-11-12-13-14-15-16-17
  211.         (with sector 17 looping around to meet sector 1)
  212.  
  213.    2 to 1:
  214.  
  215.         1-10- 2-11- 3-12- 4-13- 5-14- 6-15- 7-16- 8-17- 9
  216.         (with sector 9 looping around to meet sector 1)
  217.  
  218. It takes a little getting used to looking at this, but the most
  219. important fact to keep in mind is that the operating system reads the
  220. sectors in sequential order and will read on until the next sector in
  221. sequence appears.  On the 2 to 1 interleave example the disc will need
  222. to spin two times in order to read all 17 sectors.  Most of today's
  223. modern controllers are designed for a 1 to 1 interleave.  Some early
  224. 16-bit controllers for 286's were only 3 to 1 or 2 to 1.
  225.  
  226. An interesting problem happens if a 1 to 1 interleave is selected on a
  227. controller not designed for this speed:  The Disc ends up performing
  228. like it has a 17 to 1 interleave!  The reason for this is quite
  229. simple.  If sector 2 immediately follows sector 1, and the controller
  230. isn't ready to read sector 2, then the disc needs to spin all the way
  231. around again in order to pick up on sector 2.  This extra spin would
  232. be needed for all 17 of the sectors.
  233.  
  234.  
  235.      ==========================================================
  236.  
  237. SKEWING
  238. --------
  239. By way of an analogy, the function of the modern disc drive has been
  240. described like this: "Today's new generation of disc drives achieve
  241. the engineering equivalent of a Boeing 747 flying at MACH 4 just two
  242. meters above the ground, counting each blade of grass as it flies
  243. over.  The read/write head floats at 12 millionths of an inch above
  244. the surface of the disc which is turning at 3,600 revolutions per
  245. minute. Read/write heads position precisely over information tracks
  246. which are 800 millionths of an inch apart and the data is
  247. electronically recorded at 20,000 bits per inch."
  248.  
  249. Skewing is best understood by first looking at the layout of a
  250. non-skewed disc drive.  With the limitations of a two-dimensional
  251. drawing, a single circular MFM track has 17 sectors and would look
  252. like this:
  253.  
  254.         1- 2- 3- 4- 5- 6- 7- 8- 9-10-11-12-13-14-15-16-17
  255.         (with sector 17 looping around to meet sector 1)
  256.  
  257. The platters within the drive are spinning at a very high rate
  258. (usually 3,600 rpm), so one sector is passing beneath the R/W head
  259. once every 980 millionths of a second!  This is obviously a very small
  260. timing window.  When the entire track is processed, it is time to move
  261. to the next head (on another surface) in the cylinder.  For example: a
  262. drive with two heads reads track 1 head 1, track 1 head 2, then
  263. repositions the heads over the next track and reads track2 head 1,
  264. track 2 head 2, and so on.  The time it takes to switch between heads
  265. is extremely fast since it is an electronic change.  The time it takes
  266. to reposition over another cylinder, however, takes significantly
  267. longer since it requires a mechanical movement that is an order of
  268. magnitude slower.
  269.  
  270. Looking again at the 17 sectors, if we stack two heads we see:
  271.  
  272.         head 1 :  1- 2- 3- 4- 5- 6- 7- ...... -17
  273.         head 2 :  1- 2- 3- 4- 5- 6- 7- ...... -17
  274.  
  275. We would expect sector 1 on head 2 to immediately follow sector 17 on
  276. head 1.  Unfortunately, this doesn't happen because it TAKES TIME (or
  277. "overhead") to switch to the new head, and by the time it does, sector
  278. 1 has already gone by! Therefore the R/W head waits for the disc to
  279. spin around once for sector 1 to show up again so it can get on with
  280. its job.  Effectively, we have wasted one disc revolution that equals
  281. 1/60th of a second which could have processed almost an entire track
  282. of 17 sectors.  This is the crux of the problem that skewing
  283. addresses: eliminating unnecessary disc revolutions.
  284.  
  285. The solution is easy; shift the beginning position of sector 1 head 2
  286. enough to compensate for the head switching overhead.  That way when
  287. head 1 sector 17 finishes and the head switches, sector 1 head 2 would
  288. be spinning into place.  Remembering that tracks are circular, it
  289. would look like this:
  290.  
  291.         head 1 :  1- 2- 3- 4- 5- 6- 7- ...... -15-16-17
  292.         head 2 : 16-17- 1- 2- 3- 4- 5- ...... -13-14-15
  293.                 \--|--/
  294.                    |
  295.              Shifting these two sectors gives us time to allow for
  296. the head switching overhead and is the equivalent to HEAD SKEW = 2.
  297.  
  298. In normal use, a disc drive switches heads many times more often than
  299. it does switching physical cylinders.  The data throughput can rise
  300. dramatically when a head skew is in place.  For example, a simple
  301. non-head skewed MFM drive might have a transfer rate of 380kps and the
  302. transfer rate of a drive with a head skew of 2 could rise to around
  303. 425kps. (Since we've listed a kind of performance result, here, it is
  304. VERY important to point out that ALL systems/controllers have
  305. different amounts of overhead and processing power, not to mention the
  306. wide range of results from different transfer rate diagnostics.
  307.  
  308. A formula for calculating a head skew value is as follows (but be sure
  309. to read on):
  310.  
  311. HEAD SKEW =
  312.  
  313.         [( head switch time * SPT * spindle speed ) / 60,000 ] + 2
  314.  
  315.         Ex:     [( <15 µS * 17 * 3600 ) / 60,000 ] + 2 = 2
  316.                  └────────┬─────────────────────┘
  317.                           ┴
  318. Basically, this evaluates to zero, and the 2 is a typical overhead for
  319. most MFM controllers.
  320.  
  321. Cylinder skewing is usually a little more drastic.  It stands to
  322. reason that since the mechanics of repositioning the head assembly is
  323. going to be significantly slower than an electronic head switch, the
  324. value for a cylinder skew will be larger.  Going back to our two head
  325. drive, we might see:
  326.  
  327. Cyl 1:  head 1 :  1- 2- 3- 4- 5- 6- 7- 8- 9-10-11-12-13-14-15-16-17
  328.         head 2 : 16-17- 1- 2- 3- 4- 5- 6- 7- 8- 9-10-11-12-13-14-15
  329. Cyl 2:  head 1 :  8- 9-10-11-12-13-14-15-16-17- 1- 2- 3- 4- 5- 6- 7
  330.                       \-----------|-----------/
  331.                                   |
  332.                                Shifting these eight sectors gives us
  333. time to account for the cylinder switching overhead and is the
  334. equivalent to CYLINDER SKEW = 8.
  335.  
  336. A formula for calculating a cylinder skew value is as follows:
  337.  
  338. CYLINDER SKEW =
  339.  
  340. [( max track to track time * SPT * spindle speed ) / 60,000 ] + OHFactor
  341.  
  342.   Ex:     [( 8 msec * 17 * 3600 ) / 60,000 ] + 0 = 8 (ok to round
  343.                                                       down on MFM)
  344.  
  345. Note: OHFactor is an 'overhead factor' that is tied to SPT or sectors
  346. per track. After some casual experimentation, we've figured -
  347.  
  348.         SPT             OHFactor
  349.         17              0 or 1     (usually MFM drives)
  350.         26 - 31         1 or 2     (usually RLL drives)
  351.         33 - 52         2 or 3     (usually ESDI drives)
  352.         53 - >>         3 or 4     (usually high end ESDI drives)
  353.  
  354. The "0 or 1" type values are intended to be ambiguous, and are meant
  355. to illustrate that these values are system/controller dependent. The
  356. higher of the two numbers is the most conservative.  Generally,
  357. choosing a value a little high is not as bad as choosing a value too
  358. low, thereby causing a wasted disc revolution.  Now is a good time to
  359. recall that it is the head skew value that offers the most significant
  360. boost to the transfer rate, while an optimized cylinder skewing helps
  361. only when the heads are repositioned over a different track.  If you
  362. use a transfer rate utility to measure performance results, be advised
  363. that many of them just use a single cylinder and don't reflect
  364. cylinder skews.
  365.  
  366.  
  367.      ==========================================================
  368.  
  369.  
  370. ABOUT DRIVES NOT LISTED
  371. -----------------------
  372.  
  373. Some points about lo-level formatting drives not listed above:
  374.  
  375. In the case of all SCSI drives:
  376. These drives use a controller (properly called a host adapter) that
  377. has an onboard BIOS chip. Coded within this bios chip is a lo-level
  378. format utility (called 'firmware' as opposed to 'software') which can
  379. initiate special SCSI commands. The fact that virtually all SCSI host
  380. adapters have this capability, precludes the need for a stand-alone
  381. software utility like SGATFMT4. Defect management on SCSI drives is
  382. handled at the factory and/or by the drive "on-the-fly" on more
  383. advanced drives, and is transparent to the user.  Access to the SCSI
  384. host adapter's lo-level format utility is usually through the DOS'S
  385. DEBUG utility.  Typically, you would start DEBUG, and then at the
  386. "hyphen prompt" (DEBUG's user-friendly interface), type "G=C800:5"
  387. without quotes and followed by ENTER (where C800 is the BIOS upper
  388. memory address selected by jumpers on the host adapter).
  389.  
  390. In the case of ESDI drives:
  391. These drives normally use a controller with an onboard BIOS that has
  392. the lo-level utility.  Many ESDI drives have cylinder counts that
  393. exceed the DOS limitation of 1024.  The ESDI controller's on-board
  394. bios is required to "translate" these values in order to achieve full
  395. capacity from the drive.  Defect management for ESDI drives has been
  396. simplified over that of typical MFM drives. The manufacturer has
  397. placed a small file on the drive which lists the coordinates of the
  398. defects (cylinder, head, and BFI or BCAI) that can be read by the
  399. controller, thereby eliminating the need to enter them by hand. Access
  400. to the ESDI controller's lo-level format utility is usually through
  401. the DOS'S DEBUG utility.  Typically, you would start DEBUG, and then
  402. at the "hyphen prompt" (DEBUG's user-friendly interface), type a GO
  403. command, -G=C800:5 (where C800 is the BIOS upper memory address
  404. selected by jumpers on the controller). ESDI drives can be defined
  405. optionally, with the BIOS on the controller card disabled, in a
  406. user-definable or custom CMOS drivetype.  SGATFMT4 supports this
  407. bios-disabled condition.
  408.  
  409. In the case of RLL drives :
  410. These drives also normally use a controller like the ST21/22R
  411. controllers with an onboard BIOS that has the lo-level utility. Defect
  412. management for RLL drives is the same as MFM drives.  Defects are
  413. usually listed on a sticker affixed to the top of the drive and need
  414. to be entered manually during the lo-level format.  Access to the RLL
  415. controller's lo-level format utility is usually through the DOS'S
  416. DEBUG utility.  Typically, you would start DEBUG, and then at the
  417. "hyphen prompt" (DEBUG's user-friendly interface), type a GO command,
  418. -G=C800:5 (where C800 is the BIOS upper memory address selected by
  419. jumpers on the controller). RLL drives can be defined optionally, with
  420. the BIOS on the controller card disabled, in a user-definable or
  421. custom CMOS drivetype.  This version of SGATFMT4 supports RLL drives
  422. that are fully defined in CMOS with the controller BIOS disabled.
  423.  
  424. In the case of ATA (IDE) drives:
  425. ATA (IDE) drives can be divided into three separate scenarios: Early,
  426. Swift and ZBR.
  427.  
  428. 1.  EARLY:  When ATA interface drives (aka IDE - integrated drive
  429. electronics, but so are SCSI's) were first introduced (ST157A family),
  430. we strongly warned and cautioned against any attempt to lo-level
  431. format the drives because 1) the factory written defect-mapping files
  432. might be erased on reserved areas of the drive, and 2) the optimized
  433. interleave and skewing values used would be forfeited giving slow
  434. transfer rates.  At this stage of development, SGATFMT4 lists these
  435. drives only as a fall back option, in lieu of a factory repair format.
  436. If the drive has somehow lost its original format, or the partition
  437. structure been corrupted by a virus etc., SGATFMT4 could be used to
  438. reformat _without_ the benefit of the defect mapping files.  Any
  439. defects will need to be "rediscovered" again; first, by the DOS high
  440. level format and second, by a third-party disk scanning utility. These
  441. utilities are quite likely to locate all of the hard errors, but
  442. unlikely to find the soft errors.  The only way to completely evaluate
  443. a drive for both hard and soft error is by a factory repair with
  444. extremely sophisticated diagnostic equipment.  (See the glossary
  445. section for HARD and SOFT ERRORS.)
  446.  
  447. 2.  SWIFT:  As the ATA interface products became more sophisticated
  448. with new technology and the introduction of the Swift drives (models
  449. like ST1239A, ST1201A etc), lo-level formatting became pretty much
  450. "half" of a problem.  When these drives are in translation mode
  451. (non-physical geometry definitions), a lo-level format is harmless to
  452. the factory defect-mapping files and optimized skewing (albeit
  453. destructive to user data) since it doesn't re-sector the drive. If,
  454. however, the Swift drive is in true physical mode, then the lo-level
  455. format will re-sector the drive.
  456.  
  457. 3.  ZBR:  Finally, today's ATA interface drives (like the ST-1144A and
  458. ST-3144A) are often Zone Bit Recorded (ZBR). ZBR drives, have variable
  459. sectors per track, depending on the zone of the drive. The outside
  460. tracks, being larger in circumference (i.e. track length is longer),
  461. are able to hold more sectors than the innermost tracks. In this
  462. scenario, it is IMPOSSIBLE to define the drive in CMOS setup with true
  463. physical values. Cylinders and heads, yes.... but not the sectors per
  464. track.  Therefore, these drive are ALWAYS in translation mode and
  465. immune to a re-sectoring lo-level format.  On ZBR ATA interface drives
  466. (Seagate, at least... others UNK), the factory defect mapping files
  467. are fully protected, and since the drive is always in translation, the
  468. optimized skewing is also protected.
  469.  
  470. As to defect management, most ATA interface drive's show 0 bytes in
  471. bad sectors under CHKDSK.  This is a courtesy reallocation or
  472. "slipping" of bad sectors by the factory format, and not part of the
  473. interface definition.
  474.  
  475. There are a few good reasons to consider a lo-level format for a ZBR
  476. ATA/IDE drive.  Because a lo-level will "data-scrub" all the sectors,
  477. this may be the only way to delete a corrupted partition record, or
  478. partition record from another operating system, or even a virus
  479. infection.  If a new defect surfaces, maybe from a head slap
  480. (earthquake!), SGATFMT4 is able to find and lock out the offending
  481. sector, provided the defect is not in the ID portion of the sector. In
  482. this method, a kind of mid-level format, the locked out sector will be
  483. found again during the DOS hi-level format and will indicate as "bytes
  484. in bad sectors" at the conclusion.
  485.  
  486.  
  487.      ==========================================================
  488.  
  489. ANATOMY OF A SECTOR
  490. -------------------
  491. The purpose of a track format is to organize a data track into smaller
  492. sequentially numbered blocks called sectors.  The beginning of each
  493. sector is defined by a pre-written identification (ID) field which
  494. contains the Logical sector address plus cylinder and head
  495. information.  The ID field is then followed by a user supplied data
  496. field.
  497.  
  498. Anatomy of a Sector (17-sector, 512 byte/sector):
  499. Index                                                            Index
  500. ┌┐                                                                   ┌┐
  501. ││                                                                   ││
  502. ┘└───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┘└─
  503.  │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │10 │11 │12 │13 │14 │15 │16 │17 │
  504. Gap1                         │   │                                  Gap4
  505.                              │   │
  506.                           571 Bytes Total
  507. ┌────────────────────────────┘   └──────────────────────────────────────┐
  508.    (Field Types:)
  509. ┌Sync.──┬ID Field────────┬Gap2───┬Data Field──────────────────────┬Gap3─┐
  510. │   1   │   2 3 4 5 6 7  │  8 9  │ 10 11           12          13  14 15
  511.  
  512.             (Field No.)
  513.  
  514.  
  515. Field No.  Bytes  Field              Description
  516.     1      13     ID VFO Lock        A field of all zeros to synchronize
  517.                                      the VFO for the ID.
  518.     2       1     Sync. Byte         A1h with a dropped clock to notify
  519.                                      the controller that data follows.
  520.     3       1     Address Mark       FEh: ID data field follows.
  521.     4       2     Cylinder Address   A numerical value in Hex defining
  522.                                      the detent position of the
  523.                                      actuator.
  524.     5       1    *Head Number        A numerical value in Hex defining
  525.                                      the head selected.
  526.     6       1     Sector Number      A numerical value in Hex defining
  527.                                      the sector for this section of
  528.                                      the rotation.
  529.     7       2   **CRC                Cyclic Redundancy Check
  530.                                      information used to verify the
  531.                                      validity of the ID information
  532.                                      field just read.
  533.     8       3     Write Turn On      Zeros written during format to
  534.                   Gap                isolate the write splice created.
  535.                                      This field assures valid reading
  536.                                      of field number seven and allows
  537.                                      the 13 bytes required for data
  538.                                      VFO lock.
  539.     9      13     Data Sync.         A field of all zeros to sync the
  540.                   VFO Lock           VFO for the data field.
  541.    10       1     Sync. Byte         A1h with a dropped clock to
  542.                                      notify the controller that data
  543.                                      follows.
  544.    11       1     Address Mark       F8h: User data follows.
  545.    12     512     Data               User Data.
  546.    13       2   **CRC                Cyclic Redundancy Check
  547.                                      information used to verify the
  548.                                      validity of the user data field
  549.                                      just read.
  550.    14       3     Write Turn Off     Zeros written during update to
  551.                   Gap                isolate the write splice created.
  552.                                      This field assures valid reading
  553.                                      of field number 13 and allows the
  554.                                      13 bytes required for VFO lock
  555.                                      for the ID field of the next
  556.                                      sector.
  557.    15      15     Inter-Record Gap   A field of 4Eh  which acts
  558.                                      as a buffer between sectors to
  559.                                      allow for speed variation.
  560.  
  561.   Index : This is a signal which occurs once per revolution and it
  562.         functions to indicate the physical beginning of the track.
  563.  
  564.   * Head Number : bits 0, 1, 2 = Head Number
  565.                   bits 3, 4    = '00'
  566.                   bits 5, 6    = Sector Size = '00'
  567.                   bit  7       = Bad Block Mark
  568.  
  569.  ** CRC : These codes are generated by the controller, and written on
  570.         the media during formatting. Data integrity is maintained by
  571.         the controller, recalculating and verifying the ID Field check
  572.         codes when the ID Field is read. An acceptable polynomial is:
  573.                  16  12  5
  574.                 X  +X  +X +1
  575.         In the case of the Data Field CRC, instead of two bytes of
  576.         Data CRC, the controller may implement a multiple byte Error
  577.         Correction Code (ECC) Data Field integrity system.  An ECC
  578.         system provides the possibility of data field read correction
  579.         as well as read error detection.  The correction/detection
  580.         ability is dependent on the code chosen and the controller
  581.         implementation.
  582.  
  583.    Gap1 : Provides a head switching recovery period and controller
  584.         decision making period, so when switching from one track to
  585.         another, sequential sectors may be read without waiting the
  586.         entire rotational latency time (additional time may be
  587.         required on 1 to 1 controllers by adding a head skew).
  588.  
  589.    Gap2 : This gap follows the CRC bytes of the ID field and continues
  590.         to the data field address mark.  Written by the controller, it
  591.         provides both a pad to ensure a proper recording and recovery
  592.         of the last bits of the ID Field check codes and to allow time
  593.         for controller decision making plus a byte for a write splice.
  594.         The write splice will be created on the media as soon as the
  595.         interface Write Gate is activated when performing a Data Field
  596.         update function.
  597.  
  598.    Gap3 : Also known as the inter-record gap, this gap follows the CRC
  599.         bytes of the Data area.  In addition to similarities to Gap2,
  600.         it also provides a means to accommodate variances in spindle
  601.         speeds.  A track may have been formatted while the disk is
  602.         running slower than nominal, then write updated with the disk
  603.         running faster than normal. Without a gap, or if the gap is
  604.         too small, the sync bytes or ID field of the next sector could
  605.         be overwritten. The actual size of this padding, initially
  606.         provided by the format function, will vary, affected by on the
  607.         disk rotational speed variations when the track was formatted
  608.         and each time the Data Field is updated.
  609.  
  610.    Gap4 : This is the speed tolerance gap for the entire track.  It is
  611.         required to insure that the entire track can be formatted
  612.         during an Index Pulse to Index Pulse Track Format operation.
  613.         This Preindex gap will vary in actual size, depending on the
  614.         disk rotational speed (+-0.5%) and write frequency tolerance
  615.         (+-0.01%) at the time of formatting.
  616.  
  617.  
  618. ======================================================================
  619.  
  620. Obtaining updated versions
  621. --------------------------
  622.       If this software is updated, the updated version
  623.       will be posted at the following sources:
  624.  
  625.       *  SeaBOARD-The Seagate electronic bulletin board systems
  626.  
  627.                 United States          408-438-8771
  628.                 England                44-1-62-847-8011
  629.                 France                 (+33 1) 48 25 35 95
  630.                 Germany                49-89-140-9331
  631.                 Singapore              65-292-6973
  632.                 Thailand               662-531-8111
  633.                 Australia              61-2-756-2359
  634.                 Korea                  82-2-556-7294
  635.  
  636.  
  637.       *  The Seagate CompuServe Forum (type "go seagate")
  638.  
  639.       *  The Seagate ftp server (on the internet):
  640.          ftp://ftp.seagate.com
  641.  
  642.  
  643. ======================================================================
  644.  
  645. License Agreement and Warranty Disclaimer
  646. -----------------------------------------
  647.  
  648. Seagate reserves the right to change, without notice, product
  649. offerings or specifications.
  650.  
  651. This is a legal agreement between you the purchaser and Seagate
  652. Technology, Inc.  By accessing Seagate Technology SGATFMT4.EXE (the
  653. "Software"), you agree to be bound by the terms of this agreement.  If
  654. you do not agree, do not access the software.
  655.  
  656. Seagate provides the accompanying object code of the Software and
  657. nonexclusively licenses its use to you on the following terms and
  658. conditions.  The Software is Seagate's proprietary, copyrighted
  659. product.  Seagate grants you a limited access to use one copy of the
  660. Software.  You may not copy, distribute the Software for resale.  You
  661. may not reverse engineer, modify, rent, or lease the Software.  In
  662. addition, you may not disclose the information or data incorporated in
  663. the Software to others, in any format.
  664.  
  665. You accept the Software "as is" without any warranty whatsoever.
  666. Seagate does not warrant that the Software will meet your
  667. requirements; that the Software is fit for any particular purpose or
  668. that the use of the Software will be error free.
  669.  
  670. SEAGATE EXPRESSLY DISCLAIMS ALL WARRANTIES, WHETHER ORAL OR WRITTEN,
  671. EXPRESSED OR IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES OF
  672. MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.  IN NO EVENT
  673. WILL SEAGATE BE LIABLE TO YOU, YOUR CUSTOMERS OR OTHER USERS IN ANY
  674. WAY BASED ON USE OF THE SOFTWARE, INCLUDING WITHOUT LIMITATION FOR ANY
  675. LOSS OF PROFITS, LOSS OF DATA OR USE OF THE SOFTWARE OR INDIRECT,
  676. INCIDENTAL, CONSEQUENTIAL, SPECIAL, OR EXEMPLARY DAMAGES ARISING OUT
  677. OF OR IN CONNECTION WITH THE USE OR INABILITY TO USE THE SOFTWARE.
  678.  
  679. End of License Agreement.
  680.  
  681.  
  682. -=EOF: SGATFMT4.TXT=-
  683.  
  684.